/*
 * @Author: zhangqf
 * @Date: 2018-11-26 14:57:20 
 * @Last Modified by: Scherger
 * @Last Modified time: 2018-11-27 17:25:29
 * 
 * 這裡是全局的基礎工具方法
 */



/**
 * 
 * 
 *   二维码支持的部分特殊字符：!#$&'()*+,/:;=?@-._~
 *    
 *   =  ? 调试会被裁剪
 *    
 *    属性:值 , 属性:值
 * 
 *    page:topic,types:share,id:11
 * 
 *    separate:分割符
 *   
 *    dataType：类型
 * 
 *    expansion：扩展字段
 * 
 */

function conversionData(data, separate, dataType, expansion) {

  var d = data.split(separate),
    returnD;

  switch (dataType) {
    case 'string':
      //转换成url 类型
      returnD = d.join('&').replace(/:/g, '=');
      break;
    case 'object':
      //根据键值组装对象
      returnD = {}
      d.forEach(obj => {
        let objList = obj.split(':')
        returnD[objList[0]] = objList[1]
      })

      break;

    case 'array':
      //转换成数组

      returnD = d.map((arrList => {
        let list = arrList.split(':')
        let str = {}
        str[list[0]] = list[1]
        return str

      }))

      break;

  }

  return returnD


}


export default {

    conversionData,

}
